#include <bits/stdc++.h>
#include <iostream>
#include <string>
using namespace std;

int main() {
    stack <int> p;
    string s;
    getline(cin, s);
    for(int i = 0; i < s.size(); i++){
        if (s[i] == '{' || s[i] == '<' || s[i] == '(' || s[i] == '[' || s[i] == '}' || s[i] == ')' || s[i] == '>' || s[i] == ']'){
            if(s[i]=='(' || s[i] == '{' || s[i] == '[' || s[i] == '<'){
                p.push(s[i]);
            }
            else{
                if(s[i] == ')' && !p.empty() && p.top() == '(') {
                    p.pop();
                }
                else if (s[i] == '}' && !p.empty() && p.top() == '{') {
                    p.pop();
                }
                else if (s[i] == ']' && !p.empty() && p.top() == '[') {
                    p.pop();
                }
                else if (s[i] == '>' && !p.empty() && p.top() == '<') {
                    p.pop();
                }
                else if ((s[i] == '}' || s[i] == ')' || s[i] == ']' || s[i] == '>') && p.empty()) {
                    p.push(i);
                    break;
                }
            }
        }
    }
    if(p.empty()){
        cout << "YES";
    }else{
        cout << "NO";
    }
}
